// knowledge页面的input框
inputFn($('.questionBtn_knowledge .searchBox'));
$('.questionBtn_knowledge .content .submitBox').click(function() {
    var $el = $('.questionBtn_knowledge .content input[type="text"]');
    if ($el.val() != $el.attr('data-txt')) {
        var keywords = $el.val();
        // 分级标题
        var str2 = "",
            $el2 = $('#commonKnow_rightCont_titlebar');
        $el2.empty();
        // 分级标题数据
        // str2 +='<span class="on">&ensp;知识搜索&ensp;&gt;&ensp;搜索结果</span>';
        str2 += '<span class="on">&ensp;常见问题&ensp;&gt;&ensp;</span><span>搜索结果</span>';
        $el2.html(str2);
        rightListFn(null, keywords, 1);
    }
});
// --------------knowledge_base----------------------------------
//  //    右上角常见问题QA点击切换
//$('.questionBtn_knowledge .sidebar dd').has('ul').click(function() {
//  $('.questionBtn_knowledge .sidebar ul').slideToggle();
//  $(this).find('.up').toggle();
//  $(this).find('.down').toggle();
//});
//  //    .questionBtn_knowledge .inner .activeLi 点击切换
//$('.questionBtn_knowledge .inner .item a').click(function() {
//  var aTxt = $(this).text();
//  $(this).parent().addClass('dis');
//  $(this).parent().siblings(".activeLi").slideDown();
//  $(this).closest('li').siblings('li').find('.item').removeClass('dis').siblings('.activeLi').slideUp();
//  $(".newswrap>.titlebar>.actext").addClass('ac').html('&ensp;&ensp;&gt;&ensp;&ensp;' + aTxt);
//  //    点击 靠谱和不靠谱按钮切换;
//  var flagK = true;
//  var flagB = true;
//  $('.activeLi .btns>input').click(function(el) {
//          $target = $(el.target)
//          if ($target.is('.question_BKP')) {
//              if (flagB) {
//                  $(this).addClass('on').siblings('input').removeClass('on');
//                  $(this).parent().siblings('.prop').addClass('on');
//                  flagK = true;
//              } else {
//                  $(this).removeClass('on');
//                  $(this).parent().siblings('.prop').removeClass('on');
//              }
//              flagB = !flagB;
//          } else if ($target.is('.question_KP')) {
//              if (flagK) {
//                  $(this).addClass('on').siblings('input').removeClass('on');
//                  $(this).parent().siblings('.prop').removeClass('on');
//                  flagB = true;
//              } else {
//                  $(this).removeClass('on');
//              }
//              flagK = !flagK;
//          };
//      })
//      //    点击提交关闭弹框
//  $('.questionBtn_knowledge .prop .submit').click(function() {
//      if ($(this).siblings('.txtBox').val() == '') {
//          confirm('请告诉我们哪儿做的不好，我们将不断改进！')
//      } else {
//          $(this).parent('.prop').removeClass('on');
//      }
//  })
//});
//
//  //    点击 收起>>  收起下拉详情显示部分;
//$('.questionBtn_knowledge .inner .close').click(function() {
//  $(this).closest('.activeLi').slideUp(function() {
//      $(this).closest('.activeLi').siblings('.item').removeClass('dis');
//  });
//  $(".newswrap>.titlebar>.actext").removeClass('ac');
//});
//  数据传入
//  本页面数据加载
(function() {
    var CommonSucceed = AjaxComplete(2);
    // 左侧导航栏
    RequestGTMC("listKngCategory", {},
        function(data) {
            // 把data 数据转为对象dataObj中并插入左侧导航栏；
            var dataObj = new Object();
            console.log("左侧菜单 调用成功");
            console.log(data);
            // data数据转为dataObj对象
            if (data.length !== 0) {
                // 左侧导航一级菜单；
                var data1 = [];
                // 左侧导航一级菜单的第一部分二级菜单；
                var DataFirst = [];
                // 左侧导航一级菜单的第二部分二级菜单；
                var DataSecond = [];
                for (var j = 0; j < data.length; j++) {
                    var oData = data[j];
                    var nodeData = oData.treenodePath.substr(1, data[j].treenodePath.length - 2).split('/');
                    var n = nodeData.length;
                    var nameData = oData.treenodeNamePath.substr(1, data[j].treenodeNamePath.length - 2).split('/');
                    if (nameData[0] == "普通知识") {
                        if (n >= 1) {
                            if (n == 1) {
                                data1.push(oData);
                                for (var i = 0; i < data1.length; i++) {
                                    dataObj[data1[i].name] = new Array();
                                }
                            } else if (n == 3) {
                                if (nameData[1] == "常见问题QA") {
                                    dataObj[data1[0].name].push(oData);
                                }
                            }
                        }
                    };
                }
                console.log(dataObj)
                    // dataObj对象插入左侧导航栏
                var str = "",
                    $el = $("#commonKnow_sidebar_title");
                // $el.empty();
                str += '<dt><img src="../images/knowledge_sidebar_icon.png">常见问题QA</dt>';
                for (var key in dataObj) {
                    str += '<dd><span class="up on"><img src="../images/knowledge_sidebar_up.png"/></span><span class="down"><img src="../images/knowledge_sidebar_down.png"/></span>' + key + '<ul>';
                    for (var i = 0; i < dataObj[key].length; i++) {
                        str += '<li data-id="' + dataObj[key][i].id + '" data-paname="' + dataObj[key][i].treenodeNamePath + '">' + dataObj[key][i].name + '<span class="label">&gt;</span></li>';
                    };
                    str += '</ul></dd>';
                }
                $el.html(str);
            }
            // 左侧菜单栏点击切换；
            $('.questionBtn_knowledge .sidebar dd').has('ul').children('span').click(function(event) {
                $(this).parent('dd').find('ul').slideToggle();
                $(this).toggle();
                $(this).siblings('span').toggle();
            });
            console.log(dataObj)
                // 点击sidebar 第三级标题
            $('.questionBtn_knowledge .sidebar dd').has('ul').find('ul').children('li').click(function() {
                // 第三级标题的id
                var thirdTitleId = $(this).attr('data-id').toString();
                // 第三级标题的父级标题
                var thirdTitlePaName = $(this).attr('data-paname').substr(1, ($(this).attr('data-paname').length - 2)).split('/');
                // 分级标题
                var str2 = " ",
                    $el2 = $('#commonKnow_rightCont_titlebar');
                $el2.empty();
                // 分级标题数据插入结构中
                if (thirdTitlePaName) {
                    // 本来b是0的但是为了不让最前和最后级显示就去掉了
                    for (var b = 1; b < thirdTitlePaName.length - 1; b++) {
                        str2 += '<span class="on">&ensp;' + thirdTitlePaName[b] + '&ensp;&gt;</span>';
                    }
                    $el2.html(str2);
                }
                rightListFn(thirdTitleId, null, 1);
                /*$('#commonKnow_rightCont_titlebar').html('<span class="on">&ensp;常见问题&ensp;&gt;</span>');
                rightListFn("20256753806790380064", null, 1);*/
            })
            $("#commonKnow_sidebar_title li[data-id]").eq(0).trigger('click');
            AddDoneCount();
        },
        function() {
            console.log("左侧菜单 调用失败");
        },
        function() {
            console.log("左侧菜单 请求完成");
        });
})()
//rightListFn("20256753806790380064", null, 1);

// 右边列表数据插入
function rightListFn(curId, curName, num) {
    // 判断传入的数据；
    var obj;
    if (curId) {
        obj = {
            kngCategoryId: curId,
            page: num,
            row: 10
        }
    } else if (curName) {
        obj = {
            name: curName,
            page: num,
            row: 10
        }
    } else {
        obj = {
            page: num,
            row: 10
        }
    };
    RequestGTMC("listKnowledgeByName", obj,
        function(data) {
            console.log("右侧列表 获取成功");
            console.log(data);
            var str = "",
                $el = $("#commonKnow_botWrap .inner");
            $el.empty();
            if (data.content.length !== 0) {
                for (var i = 0; i < data.content.length; i++) {
                    str += '<li data-id="' + data.content[i].id + '"><div class="item"><a>' + data.content[i].title + '</a></div><div class="activeLi"></div></li>';
                }
                if (parseInt(data.total) > 1) {
                    console.log(data.total, parseInt(data.total) > 1);
                    var pag = "";
                    for (var i = 1; i <= data.total; i++) {
                        if (data.page === i) {
                            pag += '<a href="javascript:" class="on">' + i + '</a>';
                        } else {
                            // 如果数据过多就显示一至三，总页数前三，当前页数前后两页，共九页
                            if (i < 4 || i > data.total - 3 || (i < data.page + 2 && i > data.page - 2)) {
                                pag += '<a href="javascript:">' + i + '</a>';
                            } else if (i === data.page - 3 || i === data.page + 3) {
                                pag += '<a href="javascript:" class="none">...</a>';
                            }
                        }
                    }
                    $("#common_list_pagination").show().children('.pageBar').html(pag);
                    $("#common_list_pagination .pageBar a").off('click').on('click', function(event) {
                        var pages = $(this).html().trim();
                        if (pages !== "...") {
                            $("#commonKnow_botWrap .inner").prepend('<div class="common_load know"><img src="../images/loading.gif"></div>');
                            rightListFn(curId, curName, pages);
                        }
                    });
                } else {
                    $("#common_list_pagination").removeAttr('style');
                }
            } else {
                str = '<li class="common_none">暂无任何相关记录</li>';
            }
            $el.html(str);
            AddDoneCount();
            var strr = '<div class="common_load"><img src="../images/loading.gif"></div>';
            $("#commonKnow_botWrap .inner .activeLi").append(strr);
            // 右侧内容点击获取详情内页 .inner li 点击切换
            $('.questionBtn_knowledge .inner .item a').click(function() {
                var index = $(this).closest('li').index()
                    // 获取点击的列表元素的id
                var contListId = $(this).closest('li').attr('data-id');
                var contListTit = $(this).text();
                // 右侧 内容详情页
                contListFn(contListId, index);
            })
        },
        function() {
            console.log("右侧列表 调用失败");
        },
        function() {
            console.log("右侧列表 请求完成");
        }
    );
}
//右侧内容页 内页详情 数据加载
function contListFn(id, index) {
    var str = "",
        $el = $("#commonKnow_botWrap .inner");
    var str2 = " ",
        $el2 = $('#commonKnow_rightCont_titlebar');
    var $el = $el.find('li').eq(index).children('.activeLi');
    $el.html('<div class="common_load qa"><img src="../images/loading.gif"></div>');
    $el.slideDown().siblings('.item').addClass('dis');
    $el.parent('li').siblings('li').children('.activeLi').removeAttr('style');
    $el.parent('li').siblings('li').children('.item').removeClass('dis');
    RequestGTMC("getKngInfoById", {
            id: id
        },
        function(data) {
            console.log("内容详情 获取成功");
            console.log(data);
            if (data.length !== 0) {
                if (data.treenode_name_path) {
                    /*var titleData=data.treenode_name_path.substr(1,(data.treenode_name_path.length-2)).split('/');
                    for(var e=0;e<titleData.length-1;e++){
                        str2 +='<span class="on">&ensp;'+titleData[e]+'&ensp;&gt;</span>';
                    }*/
                    str2 += '<span class="on">&ensp;常见问题QA&ensp;&gt;</span><span class="actext ac">&ensp;' + data.title + '</span>';
                    $el2.html(str2);
                }
                var nowords = "详细内容请下载附件查看";
                str += '<a href="javascript:void(0)">' + data.title + '</a><span class="close">收起</span><dl>';
                str += '<dt>' + (data.contents == undefined ? nowords : data.contents) + '</dt><dd class="downloadBox">关于设变资料查看和下载权限的申请.eml<a class="dowload">下载</a></dd><dd class="ask">你觉得这个知识靠谱吗？</dd><dd class="btns"><input type="button" class="question_KP" value="靠谱"><input type="button" class="question_BKP" value="不靠谱"></dd><dd class="prop"><span class="reason">理由：</span><textarea class="txtBox"></textarea><span class="absolute"> <i class="red">&lowast;&ensp;</i>必填</span><input class="submit" type="button" value="提交" /></dd></dl>';
                dowloadFn(data.id, $el);
                $el.html(str).animate({
                    "max-height": "999",
                    "min-height": "186"
                }, "200");
            }
            AddDoneCount();
            // 点击 收起>> 收起下拉详情显示部分;
            $('.questionBtn_knowledge .inner .close').click(function() {
                /*$(this).closest('.activeLi').slideUp(function() {
                    $(this).closest('.activeLi').siblings('.item').removeClass('dis');
                });*/
                $(this).parents('.activeLi').animate({
                    "max-height": "24",
                    "min-height": "24"
                }, "200", function() {
                    $(this).removeAttr('style').siblings('.item').removeClass('dis');
                });
                $(".newswrap>.titlebar>.actext").removeClass('ac');
            });
            // 知识评价
            evaluateFn(id);
            $('#commonKnow_rightCont_titlebar').find('span').click(function() {
                if ($(this).is('.on')) {
                    var treePathName = data.treenode_name_path.trim().substr(1, data.treenode_name_path.length - 2).split('/')
                    var treePathId = data.treenode_path.trim().split('/');
                    treePathId = treePathId[treePathId.length - 2];
                    // 分级标题
                    var str2 = " ",
                        $el2 = $('#commonKnow_rightCont_titlebar');
                    $el2.empty();
                    // 分级标题数据插入结构中
                    console.log(treePathName)
                    if (treePathName) {
                        /*for(var b=0;b<treePathName.length-1;b++){
                            str2 +='<span class="on">&ensp;'+treePathName[b]+'&ensp;&gt;</span>';
                        }*/
                        str2 += '<span class="on">&ensp;常见问题QA&ensp;&gt;</span><span class="actext">' + data.title + '</span>'
                        $el2.html(str2);
                    }
                    rightListFn(treePathId, null, 1);
                }
            })
        },
        function() {
            console.log("内容详情 调用失败");
        },
        function() {
            console.log("内容详情 请求完成");
        }
    );
}
// 下载附件
function dowloadFn(id, el) {
    RequestGTMC("listUploadBySourceId", {
            sourceId: id
        },
        function(data) {
            console.log("下载附件 获取成功");
            console.log(data);
            var str, $el;
            $el = el.find('.downloadBox');
            $el.empty();
            if (data.length !== 0) {
                for (var i = 0; i < data.length; i++) {
                    str = data[i].name + '<a href="' + ITSMLINK + 'fileDownload?filepath=' + data[i].path + '" class="dowload" >下载</a>';
                }
                console.log(str)
                $el.append(str);
            }
        },
        function() {
            console.log("下载附件  调用失败");
        },
        function() {
            console.log("下载附件  请求完成");
        }
    );
};
// 评价部分 数据函数
function evaluateFn(thisId) {
    var strings;
    var contents;
    console.log(strings)
    thisId = thisId || null;
    // 好评状态变量
    var flagK = true;
    // 差评状态变量
    var flagB = true;
    $('.questionBtn_knowledge .btns>input').click(function(el) {
        // 点击的目标对象
        $target = $(el.target)
        if ($target.is('.question_BKP')) {
            if (flagB) {
                $(this).addClass('on').siblings('input').removeClass('on');
                $(this).parent().siblings('.prop').addClass('on');
                flagK = true;
                // 点击提交关闭弹框
                $('.questionBtn_knowledge .prop .submit').click(function() {
                    if ($(this).siblings('.txtBox').val() == '') {
                        confirm('请告诉我们哪儿做的不好，我们将不断改进！')
                    } else {
                        strings = '差评';
                        // 填写差评理由
                        $(this).parent('.prop').removeClass('on');
                        contents = $('.questionBtn_knowledge .prop .txtBox').val();
                        // 调用评价接口
                        $(this).parent().siblings('.btns').children('.question_BKP').addClass('report_wait');
                        evafn(thisId, strings, contents);
                        $(this).parents('dl').children('.btns').children('input').off('click');
                    }
                })
            } else {
                // 再次点击取消评价
                $(this).removeClass('on');
                $(this).parent().siblings('.prop').removeClass('on');
                strings = '';
            }
            flagB = !flagB;
        } else if ($target.is('.question_KP')) {
            if (flagK) {
                $(this).addClass('on').siblings('input').removeClass('on');
                $(this).parent().siblings('.prop').removeClass('on');
                flagB = true;
                strings = '好评';
                // 调用评价接口
                $(this).addClass('report_wait');
                evafn(thisId, strings, null);
                $(this).parents('dl').children('.btns').children('input').off('click');
            } else {
                // 再次点击取消评价
                $(this).removeClass('on');
                strings = '';
            }
            flagK = !flagK;
        };
    })
}
// 评价加载函数
function evafn(id, str, content) {
    console.log("评价传入参数" + id, str, content)
    RequestGTMC("kngCommentSubmit", {
                kngId: id,
                comment_type: str,
                content: content || null
            },
            function(data) {
                console.log("知识评价 获取成功");
                console.log(data);
                if (data.length !== 0) {
                    console.log(data.msg, data.success, data.data)
                }
                $(".report_wait").removeClass('report_wait').addClass('report_over');
                AddDoneCount();
            },
            function() {
                console.log("知识评价 调用失败");
            },
            function() {
            console.log("知识评价 请求完成");
        }
    );
}